(function(factory) {
	if (typeof define === "function" && define.amd) {

		// AMD. Register as an anonymous module.
		define(factory);
	} else {
		// Browser globals
		factory();
	}
}(function() {
	
	HteOS.Console = {
		
		check : function(){
			if (!window.console) {
				window.console = {
					log : function() {},
					dir : function() {},
					error : function() {}
				}
			} else {
				if (!window.console.dir) {
					window.console.dir = function(obj) {}
				}
			}
			
			if (window.console && window.console.info) {
					console.info('%c' + ['', 'Hello，亲爱的程序员同行', 
					'很高兴能在这里能够遇见console前你',
					'打开了console你能看到我亲切的问候',
					'不知你是否对HteOS感兴趣?', 
					'如果你有问题可联系我们QQ：340025873'].join("\n"), 
					['font-size:14px', 'line-height:28px', 'color: #0064b0'].join(';'));
				}
		},
		
		log : function(str){
				console.log(str);
		},
		
		debug : function(str,c){
			if(HteOS.debug && window.console.debug){
				console.debug(str);
				if(c){
					c.title = 'HteOS Debugger Trace';
					console.trace(c.title);
				}
				//this.trace();
			}
		},
		trace : function(){
			var caller = arguments.callee.caller;
			var i = 0;
	        while (caller && i < 10) {
	            console.log(caller.name);
	            caller = caller.caller;
	            i++;
	        }
		}
	}
	HteOS.Console.debug.title = "HteOS Debugger Trace："
	HteOS.Console.check();
}));